#ifndef GUIEVENT_H_
#define GUIEVENT_H_

#include "SDL/SDL.h"

namespace gui {

enum GUIEventType {
	Quit = SDL_QUIT
};

enum GUIEventKey {
	Escape = SDLK_ESCAPE,
	KeyUp = SDLK_UP,
	KeyDown = SDLK_DOWN,
	KeyLeft = SDLK_LEFT,
	KeyRight = SDLK_RIGHT,
	Home = SDLK_HOME
};

/*
 * Clase que representa un evento por parte del input.
 */
class GUIEvent {
public:

	/* Constructor */
	GUIEvent();

	/* Destructor */
	virtual ~GUIEvent();

	/* Rellena el evento con la informacion del evento SDL. */
	virtual void fillEvent(SDL_Event event);

	virtual GUIEventType getType();

	virtual GUIEventKey getKey();

private:

	SDL_Event event;

};

}

#endif /* GUIEVENT_H_ */
